// import request from '@/utils/request';
import request from '@/utils/request';
import type { Result, PageResult } from '@/types/global';
import axios from 'axios';

// 菜单接口
export interface MenuItem {
  id: number;
  name: string;
  parentId: number | null;
  path?: string;
  component?: string;
  perms?: string;
  icon?: string;
  type: number; // 菜单类型（0目录 1菜单 2按钮）
  orderNum: number;
  status: number; // 菜单状态（0停用 1正常）
  isHidden?: number; // 是否隐藏（0显示 1隐藏）
  isCache?: number; // 是否缓存（0缓存 1不缓存）
  createTime?: string;
  updateTime?: string;
  children?: MenuItem[];
}

// 获取菜单列表
export function getMenuList() {
  return axios.get<Result>('/api/menu/list');
}
// export function getMenuList() {
//   return request({
//     url: '/api/menu/list',
//     method: 'get',
//   });
// }

// 获取角色菜单列表
// export function getRoleMenuList(roleId: number) {
//   return request({
//     url: `/api/system/role/${roleId}/menus`,
//     method: 'get',
//   });
// }
export function getRoleMenuList(roleId: number) {
  return axios.get<Result>(`/api/system/role/${roleId}/menus`);
}

// 获取菜单树形数据
// export function getMenuTree() {
//   return request({
//     url: '/api/menu/tree',
//     method: 'get',
//   });
// }
export function getMenuTree() {
  return axios.get<Result>('/api/menu/tree');
}
